package com.wei.chatroom.model;

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @projectName: chatroom
 * @package: com.wei.chatroom.model
 * @className: MessageSessionMapper
 * @author: weiJiang
 * @description:
 * @date: 2025/9/22 下午5:23
 * @version: 1.0
 */

@Mapper
public interface MessageSessionMapper {
    //根据用户id获取所有会话
    List<Integer> getSessionIdByUserId(Integer userId);

    //根据sessionId再查询这个会话包含了哪些用户,除了自己

    //我也不知道为什么要加@Param,反正记住，多参数最好都加上，不要嫌麻烦
    List<Friend> getFriendsBySessionId(@Param("sessionId") Integer sessionId,
                                       @Param("selfUserId")Integer selfUserId);


    ////////////////////////////////////////////////

    //新增一个会话，并返回会话id
    //这个函数的返回值只是返回影响行数
    //需要的真正返回值在messageSession对象里面
    Integer addMessageSession(MessageSession messageSession);

    //新增会话和用户之间的关联，和上一个方法不是一个数据表

    void addMessageSessionUser(MessageSessionUserItem messageSessionUserItem);
}
